package com.anlogic.sdk.tools.model;

import java.util.List;

public class DriverInfo {
	private static final String PS_DRIVER_PREFIX = "PS_DRIVER_";
	private static final String PL_DRIVER_PREFIX = "PL_DRIVER_";
	
	private String name;

	private String version;
	
	private String description;
	
	private List<String> depends;
	
	private List<String> supportedProc;
	
	private List<String> supportedOS;
	
	private boolean Default;

	private DriverInfo() {
	}

	public String getName() {
		return this.name;
	}

	public void setName(String name) {
		this.name = name;
	}
	
	public String getBareName() {
		if (this.name.startsWith(PS_DRIVER_PREFIX)) {
			return this.name.replace(PS_DRIVER_PREFIX, "");
		}
		if (this.name.startsWith(PL_DRIVER_PREFIX)) {
			return this.name.replace(PL_DRIVER_PREFIX, "");
		}
		return "";
	}
	
	public boolean isPsDriver() {
		if (this.name.startsWith(PS_DRIVER_PREFIX)) {
			return true;
		}
		return false;
	}

	public boolean isPlDriver() {
		if (this.name.startsWith(PL_DRIVER_PREFIX)) {
			return true;
		}
		return false;
	}
	
	public String getVersion() {
		return this.version;
	}

	public void setVersion(String version) {
		this.version = version;
	}
	
	public String getDesc() {
		return this.description;
	}
	
	public void setDesc(String desc) {
		this.description = desc;
	}
	
	public List<String> getDepends() {
		return this.depends;
	}
	
	public void setDepends(List<String> depends) {
		this.depends = depends;
	}
	
	public List<String> getSupportedProc() {
		return this.supportedProc;
	}
	
	public void setSupportedProc(List<String> supportedProc) {
		this.supportedProc = supportedProc;
	}
	
	public List<String> getSupportedOS() {
		return this.supportedOS;
	}
	
	public void setSupportedOS(List<String> supportedOS) {
		this.supportedOS = supportedOS;
	}
	
	public boolean isDefault() {
		return this.Default;
	}
	
	public void setDefault(boolean status) {
		this.Default = status;
	}
}